import { MetaBoardData as _MetaBoardData } from './meta-board-data'
import { MetaFile as _MetaFile } from './meta-file'
import { MetaHistoryChart as _MetaHistoryChart } from './meta-history-chart'
import { MetaPlatform as _MetaPlatform } from './meta-platform'
import { MetaResourceChart as _MetaResourceChart } from './meta-resource-chart'
import { MetaResourceChartExample as _MetaResourceChartExample } from './meta-resource-chart-example'
import { MetaResourceModel as _MetaResourceModel } from './meta-resource-model'
import { MetaResourceModule as _MetaResourceModule } from './meta-resource-module'
import { MetaResourceModuleAction as _MetaResourceModuleAction } from './meta-resource-module-action'
import { MetaTemplate as _MetaTemplate } from './meta-template'
import {
  MetaFileType as _MetaFileType,
  MetaFileBelong as _MetaFileBelong,
  MetaResourceModelType as _MetaResourceModelType,
  MetaResourceModelDataType as _MetaResourceModelDataType,
  MetaResourceRelativeType as _MetaResourceRelativeType,
  MetaResourceModuleActionType as _MetaResourceModuleActionType,
  MetaTemplateBelong as _MetaTemplateBelong,
} from '@prisma/client'

export namespace DomainModel {
  export class MetaBoardData extends _MetaBoardData {}
  export class MetaFile extends _MetaFile {}
  export class MetaHistoryChart extends _MetaHistoryChart {}
  export class MetaPlatform extends _MetaPlatform {}
  export class MetaResourceChart extends _MetaResourceChart {}
  export class MetaResourceChartExample extends _MetaResourceChartExample {}
  export class MetaResourceModel extends _MetaResourceModel {}
  export class MetaResourceModule extends _MetaResourceModule {}
  export class MetaResourceModuleAction extends _MetaResourceModuleAction {}
  export class MetaTemplate extends _MetaTemplate {}

  export const extraModels = [
    MetaBoardData,
    MetaFile,
    MetaHistoryChart,
    MetaPlatform,
    MetaResourceChart,
    MetaResourceChartExample,
    MetaResourceModel,
    MetaResourceModule,
    MetaResourceModuleAction,
    MetaTemplate,
  ]

  export const ApiPropertyEnum = {
    ..._MetaBoardData.ApiPropertyEnum,
    ..._MetaFile.ApiPropertyEnum,
    ..._MetaHistoryChart.ApiPropertyEnum,
    ..._MetaPlatform.ApiPropertyEnum,
    ..._MetaResourceChart.ApiPropertyEnum,
    ..._MetaResourceChartExample.ApiPropertyEnum,
    ..._MetaResourceModel.ApiPropertyEnum,
    ..._MetaResourceModule.ApiPropertyEnum,
    ..._MetaResourceModuleAction.ApiPropertyEnum,
    ..._MetaTemplate.ApiPropertyEnum,
  }

  export const MetaFileType = _MetaFileType
  export type MetaFileType = _MetaFileType

  export const MetaFileBelong = _MetaFileBelong
  export type MetaFileBelong = _MetaFileBelong

  export const MetaResourceModelType = _MetaResourceModelType
  export type MetaResourceModelType = _MetaResourceModelType

  export const MetaResourceModelDataType = _MetaResourceModelDataType
  export type MetaResourceModelDataType = _MetaResourceModelDataType

  export const MetaResourceRelativeType = _MetaResourceRelativeType
  export type MetaResourceRelativeType = _MetaResourceRelativeType

  export const MetaResourceModuleActionType = _MetaResourceModuleActionType
  export type MetaResourceModuleActionType = _MetaResourceModuleActionType

  export const MetaTemplateBelong = _MetaTemplateBelong
  export type MetaTemplateBelong = _MetaTemplateBelong
}
